package net.cyndeline.fov.mrpas

/**
 * One fourth of a map, divided into rows/columns stored as lines,
 * with the diagonal of the quadrant present in both line sets.
 */
trait Quadrant {
  
  /**
   * A list of lines, each line is a list of boolean values.
   * True means the tile contains an obstacle, False means it
   * allows line of sight.
   */
  def linesFromVerticalBorder: List[Line]
  
  /**
   * A list of lines, each line is a list of boolean values.
   * True means the tile contains an obstacle, False means it
   * allows line of sight.
   */
  def linesFromHorizontalBorder: List[Line]
  
  def linesFromVerticalBorder_=(lines: List[Line])
  def linesFromHorizontalBorder_=(lines: List[Line])
}